age가 16세가 되는 시점에서 투표 권한이 생겼음을 알려주는 기능
bool get_can_vote() const { return age>=16; }
bool can vote 멤버를 생성할도 있기는 하지만, 이는 age로 판별 가능하기에 중복된 정보이다.
set_age()를 이용해 투표 가능 여부를 notify()로 호출
void set_age(int value) const {
if(age==value) return;
auto old_can_vote=can_vote();
age=value;
notify(*this, "age");
if(old_can_vote!=can_vote()) notify(*this, "can_vote");
}
하지만, 위와 같은 구현은 확장성이 없으며, 종속성을 야기한다.